home *** CD-ROM | disk | FTP | other *** search
/ Developer CD Series 1996 May: Tool Chest / Developer CD Series May 1996 (Tool Chest) (Apple Computer) (1996).iso / Tool Chest / Interfaces & Libraries / Interfaces / PInterfaces / MediaHandlers.p < prev    next >
Encoding:
Text File  |  1995-07-06  |  9.0 KB  |  292 lines  |  [TEXT/MPS ]

  1. {
  2.      File:        MediaHandlers.p
  3.  
  4.      Contains:    QuickTime Interfaces.
  5.  
  6.      Version:    Technology:    QuickTime 2.0
  7.                  Package:    Universal Interfaces 2.1 in “MPW Latest” on ETO #18
  8.  
  9.      Copyright:    © 1984-1995 by Apple Computer, Inc.
  10.                  All rights reserved.
  11.  
  12.      Bugs?:        If you find a problem with this file, use the Apple Bug Reporter
  13.                  stack.  Include the file and version information (from above)
  14.                  in the problem description and send to:
  15.                      Internet:    apple.bugs@applelink.apple.com
  16.                      AppleLink:    APPLE.BUGS
  17.  
  18. }
  19.  
  20. {$IFC UNDEFINED UsingIncludes}
  21. {$SETC UsingIncludes := 0}
  22. {$ENDC}
  23.  
  24. {$IFC NOT UsingIncludes}
  25.  UNIT MediaHandlers;
  26.  INTERFACE
  27. {$ENDC}
  28.  
  29. {$IFC UNDEFINED __MEDIAHANDLERS__}
  30. {$SETC __MEDIAHANDLERS__ := 1}
  31.  
  32. {$I+}
  33. {$SETC MediaHandlersIncludes := UsingIncludes}
  34. {$SETC UsingIncludes := 1}
  35.  
  36.  
  37. {$IFC UNDEFINED __MEMORY__}
  38. {$I Memory.p}
  39. {$ENDC}
  40. {    Types.p                                                        }
  41. {        ConditionalMacros.p                                        }
  42. {    MixedMode.p                                                    }
  43.  
  44. {$IFC UNDEFINED __IMAGECOMPRESSION__}
  45. {$I ImageCompression.p}
  46. {$ENDC}
  47. {    Quickdraw.p                                                    }
  48. {        QuickdrawText.p                                            }
  49. {    QDOffscreen.p                                                }
  50. {        Errors.p                                                }
  51. {    Components.p                                                }
  52. {    Windows.p                                                    }
  53. {        Events.p                                                }
  54. {            OSUtils.p                                            }
  55. {        Controls.p                                                }
  56. {            Menus.p                                                }
  57. {    StandardFile.p                                                }
  58. {        Dialogs.p                                                }
  59. {            TextEdit.p                                            }
  60. {        Files.p                                                    }
  61. {            Finder.p                                            }
  62.  
  63. {$IFC UNDEFINED __MOVIES__}
  64. {$I Movies.p}
  65. {$ENDC}
  66. {    Aliases.p                                                    }
  67. {        AppleTalk.p                                                }
  68.  
  69. {$PUSH}
  70. {$ALIGN MAC68K}
  71. {$LibExport+}
  72.  
  73. CONST
  74.     handlerHasSpatial            = 1 * (2**(0));
  75.     handlerCanClip                = 1 * (2**(1));
  76.     handlerCanMatte                = 1 * (2**(2));
  77.     handlerCanTransferMode        = 1 * (2**(3));
  78.     handlerNeedsBuffer            = 1 * (2**(4));
  79.     handlerNoIdle                = 1 * (2**(5));
  80.     handlerNoScheduler            = 1 * (2**(6));
  81.     handlerWantsTime            = 1 * (2**(7));
  82.     handlerCGrafPortOnly        = 1 * (2**(8));
  83.  
  84. { media task flags }
  85.     mMustDraw                    = 1 * (2**(3));
  86.     mAtEnd                        = 1 * (2**(4));
  87.     mPreflightDraw                = 1 * (2**(5));
  88.     mSyncDrawing                = 1 * (2**(6));
  89.  
  90. { media task result flags }
  91.     mDidDraw                    = 1 * (2**(0));
  92.     mNeedsToDraw                = 1 * (2**(2));
  93.     mDrawAgain                    = 1 * (2**(3));
  94.     mPartialDraw                = 1 * (2**(4));
  95.  
  96.     forceUpdateRedraw            = 1 * (2**(0));
  97.     forceUpdateNewBuffer        = 1 * (2**(1));
  98.  
  99.  
  100. TYPE
  101.     GetMovieCompleteParams = RECORD
  102.         version:                INTEGER;
  103.         theMovie:                Movie;
  104.         theTrack:                Track;
  105.         theMedia:                Media;
  106.         movieScale:                TimeScale;
  107.         mediaScale:                TimeScale;
  108.         movieDuration:            TimeValue;
  109.         trackDuration:            TimeValue;
  110.         mediaDuration:            TimeValue;
  111.         effectiveRate:            Fixed;
  112.         timeBase:                TimeBase;
  113.         volume:                    INTEGER;
  114.         width:                    Fixed;
  115.         height:                    Fixed;
  116.         trackMovieMatrix:        MatrixRecord;
  117.         moviePort:                CGrafPtr;
  118.         movieGD:                GDHandle;
  119.         trackMatte:                PixMapHandle;
  120.     END;
  121.  
  122.  
  123. FUNCTION MediaInitialize(mh: MediaHandler; VAR gmc: GetMovieCompleteParams): ComponentResult;
  124.     {$IFC NOT GENERATINGCFM}
  125.     INLINE $2F3C, $4, $501, $7000, $A82A;
  126.     {$ENDC}
  127. FUNCTION MediaSetHandlerCapabilities(mh: MediaHandler; flags: LONGINT; flagsMask: LONGINT): ComponentResult;
  128.     {$IFC NOT GENERATINGCFM}
  129.     INLINE $2F3C, $8, $502, $7000, $A82A;
  130.     {$ENDC}
  131. FUNCTION MediaIdle(mh: MediaHandler; atMediaTime: TimeValue; flagsIn: LONGINT; VAR flagsOut: LONGINT; {CONST}VAR movieTime: TimeRecord): ComponentResult;
  132.     {$IFC NOT GENERATINGCFM}
  133.     INLINE $2F3C, $10, $503, $7000, $A82A;
  134.     {$ENDC}
  135. FUNCTION MediaGetMediaInfo(mh: MediaHandler; h: Handle): ComponentResult;
  136.     {$IFC NOT GENERATINGCFM}
  137.     INLINE $2F3C, $4, $504, $7000, $A82A;
  138.     {$ENDC}
  139. FUNCTION MediaPutMediaInfo(mh: MediaHandler; h: Handle): ComponentResult;
  140.     {$IFC NOT GENERATINGCFM}
  141.     INLINE $2F3C, $4, $505, $7000, $A82A;
  142.     {$ENDC}
  143. FUNCTION MediaSetActive(mh: MediaHandler; enableMedia: BOOLEAN): ComponentResult;
  144.     {$IFC NOT GENERATINGCFM}
  145.     INLINE $2F3C, $2, $506, $7000, $A82A;
  146.     {$ENDC}
  147. FUNCTION MediaSetRate(mh: MediaHandler; rate: Fixed): ComponentResult;
  148.     {$IFC NOT GENERATINGCFM}
  149.     INLINE $2F3C, $4, $507, $7000, $A82A;
  150.     {$ENDC}
  151. FUNCTION MediaGGetStatus(mh: MediaHandler; VAR statusErr: ComponentResult): ComponentResult;
  152.     {$IFC NOT GENERATINGCFM}
  153.     INLINE $2F3C, $4, $508, $7000, $A82A;
  154.     {$ENDC}
  155. FUNCTION MediaTrackEdited(mh: MediaHandler): ComponentResult;
  156.     {$IFC NOT GENERATINGCFM}
  157.     INLINE $2F3C, 0, $509, $7000, $A82A;
  158.     {$ENDC}
  159. FUNCTION MediaSetMediaTimeScale(mh: MediaHandler; newTimeScale: TimeScale): ComponentResult;
  160.     {$IFC NOT GENERATINGCFM}
  161.     INLINE $2F3C, $4, $50A, $7000, $A82A;
  162.     {$ENDC}
  163. FUNCTION MediaSetMovieTimeScale(mh: MediaHandler; newTimeScale: TimeScale): ComponentResult;
  164.     {$IFC NOT GENERATINGCFM}
  165.     INLINE $2F3C, $4, $50B, $7000, $A82A;
  166.     {$ENDC}
  167. FUNCTION MediaSetGWorld(mh: MediaHandler; aPort: CGrafPtr; aGD: GDHandle): ComponentResult;
  168.     {$IFC NOT GENERATINGCFM}
  169.     INLINE $2F3C, $8, $50C, $7000, $A82A;
  170.     {$ENDC}
  171. FUNCTION MediaSetDimensions(mh: MediaHandler; width: Fixed; height: Fixed): ComponentResult;
  172.     {$IFC NOT GENERATINGCFM}
  173.     INLINE $2F3C, $8, $50D, $7000, $A82A;
  174.     {$ENDC}
  175. FUNCTION MediaSetClip(mh: MediaHandler; theClip: RgnHandle): ComponentResult;
  176.     {$IFC NOT GENERATINGCFM}
  177.     INLINE $2F3C, $4, $50E, $7000, $A82A;
  178.     {$ENDC}
  179. FUNCTION MediaSetMatrix(mh: MediaHandler; VAR trackMovieMatrix: MatrixRecord): ComponentResult;
  180.     {$IFC NOT GENERATINGCFM}
  181.     INLINE $2F3C, $4, $50F, $7000, $A82A;
  182.     {$ENDC}
  183. FUNCTION MediaGetTrackOpaque(mh: MediaHandler; VAR trackIsOpaque: BOOLEAN): ComponentResult;
  184.     {$IFC NOT GENERATINGCFM}
  185.     INLINE $2F3C, $4, $510, $7000, $A82A;
  186.     {$ENDC}
  187. FUNCTION MediaSetGraphicsMode(mh: MediaHandler; mode: LONGINT; {CONST}VAR opColor: RGBColor): ComponentResult;
  188.     {$IFC NOT GENERATINGCFM}
  189.     INLINE $2F3C, $8, $511, $7000, $A82A;
  190.     {$ENDC}
  191. FUNCTION MediaGetGraphicsMode(mh: MediaHandler; VAR mode: LONGINT; VAR opColor: RGBColor): ComponentResult;
  192.     {$IFC NOT GENERATINGCFM}
  193.     INLINE $2F3C, $8, $512, $7000, $A82A;
  194.     {$ENDC}
  195. FUNCTION MediaGSetVolume(mh: MediaHandler; volume: INTEGER): ComponentResult;
  196.     {$IFC NOT GENERATINGCFM}
  197.     INLINE $2F3C, $2, $513, $7000, $A82A;
  198.     {$ENDC}
  199. FUNCTION MediaSetSoundBalance(mh: MediaHandler; balance: INTEGER): ComponentResult;
  200.     {$IFC NOT GENERATINGCFM}
  201.     INLINE $2F3C, $2, $514, $7000, $A82A;
  202.     {$ENDC}
  203. FUNCTION MediaGetSoundBalance(mh: MediaHandler; VAR balance: INTEGER): ComponentResult;
  204.     {$IFC NOT GENERATINGCFM}
  205.     INLINE $2F3C, $4, $515, $7000, $A82A;
  206.     {$ENDC}
  207. FUNCTION MediaGetNextBoundsChange(mh: MediaHandler; VAR when: TimeValue): ComponentResult;
  208.     {$IFC NOT GENERATINGCFM}
  209.     INLINE $2F3C, $4, $516, $7000, $A82A;
  210.     {$ENDC}
  211. FUNCTION MediaGetSrcRgn(mh: MediaHandler; rgn: RgnHandle; atMediaTime: TimeValue): ComponentResult;
  212.     {$IFC NOT GENERATINGCFM}
  213.     INLINE $2F3C, $8, $517, $7000, $A82A;
  214.     {$ENDC}
  215. FUNCTION MediaPreroll(mh: MediaHandler; time: TimeValue; rate: Fixed): ComponentResult;
  216.     {$IFC NOT GENERATINGCFM}
  217.     INLINE $2F3C, $8, $518, $7000, $A82A;
  218.     {$ENDC}
  219. FUNCTION MediaSampleDescriptionChanged(mh: MediaHandler; index: LONGINT): ComponentResult;
  220.     {$IFC NOT GENERATINGCFM}
  221.     INLINE $2F3C, $4, $519, $7000, $A82A;
  222.     {$ENDC}
  223. FUNCTION MediaHasCharacteristic(mh: MediaHandler; characteristic: OSType; VAR hasIt: BOOLEAN): ComponentResult;
  224.     {$IFC NOT GENERATINGCFM}
  225.     INLINE $2F3C, $8, $51A, $7000, $A82A;
  226.     {$ENDC}
  227. FUNCTION MediaGetOffscreenBufferSize(mh: MediaHandler; VAR bounds: Rect; depth: INTEGER; ctab: CTabHandle): ComponentResult;
  228.     {$IFC NOT GENERATINGCFM}
  229.     INLINE $2F3C, $A, $51B, $7000, $A82A;
  230.     {$ENDC}
  231. FUNCTION MediaSetHints(mh: MediaHandler; hints: LONGINT): ComponentResult;
  232.     {$IFC NOT GENERATINGCFM}
  233.     INLINE $2F3C, $4, $51C, $7000, $A82A;
  234.     {$ENDC}
  235. FUNCTION MediaGetName(mh: MediaHandler; VAR name: Str255; requestedLanguage: LONGINT; VAR actualLanguage: LONGINT): ComponentResult;
  236.     {$IFC NOT GENERATINGCFM}
  237.     INLINE $2F3C, $C, $51D, $7000, $A82A;
  238.     {$ENDC}
  239. FUNCTION MediaForceUpdate(mh: MediaHandler; forceUpdateFlags: LONGINT): ComponentResult;
  240.     {$IFC NOT GENERATINGCFM}
  241.     INLINE $2F3C, $4, $51E, $7000, $A82A;
  242.     {$ENDC}
  243. FUNCTION MediaGetDrawingRgn(mh: MediaHandler; VAR partialRgn: RgnHandle): ComponentResult;
  244.     {$IFC NOT GENERATINGCFM}
  245.     INLINE $2F3C, $4, $521, $7000, $A82A;
  246.     {$ENDC}
  247.  
  248. CONST
  249.     kMediaInitializeSelect        = $501;
  250.     kMediaSetHandlerCapabilitiesSelect = $502;
  251.     kMediaIdleSelect            = $503;
  252.     kMediaGetMediaInfoSelect    = $504;
  253.     kMediaPutMediaInfoSelect    = $505;
  254.     kMediaSetActiveSelect        = $506;
  255.     kMediaSetRateSelect            = $507;
  256.     kMediaGGetStatusSelect        = $508;
  257.     kMediaTrackEditedSelect        = $509;
  258.     kMediaSetMediaTimeScaleSelect = $50A;
  259.     kMediaSetMovieTimeScaleSelect = $50B;
  260.     kMediaSetGWorldSelect        = $50C;
  261.     kMediaSetDimensionsSelect    = $50D;
  262.     kMediaSetClipSelect            = $50E;
  263.     kMediaSetMatrixSelect        = $50F;
  264.     kMediaGetTrackOpaqueSelect    = $510;
  265.     kMediaSetGraphicsModeSelect    = $511;
  266.     kMediaGetGraphicsModeSelect    = $512;
  267.     kMediaGSetVolumeSelect        = $513;
  268.     kMediaSetSoundBalanceSelect    = $514;
  269.     kMediaGetSoundBalanceSelect    = $515;
  270.     kMediaGetNextBoundsChangeSelect = $516;
  271.     kMediaGetSrcRgnSelect        = $517;
  272.     kMediaPrerollSelect            = $518;
  273.     kMediaSampleDescriptionChangedSelect = $519;
  274.     kMediaHasCharacteristicSelect = $51A;
  275.     kMediaGetOffscreenBufferSizeSelect = $51B;
  276.     kMediaSetHintsSelect        = $51C;
  277.     kMediaGetNameSelect            = $51D;
  278.     kMediaForceUpdateSelect        = $51E;
  279.     kMediaGetDrawingRgnSelect    = $521;
  280.  
  281.  
  282. {$ALIGN RESET}
  283. {$POP}
  284.  
  285. {$SETC UsingIncludes := MediaHandlersIncludes}
  286.  
  287. {$ENDC} {__MEDIAHANDLERS__}
  288.  
  289. {$IFC NOT UsingIncludes}
  290.  END.
  291. {$ENDC}
  292.